package com.yuke.cloud.service.api.cmc.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

@Data
public class CmsCouponUserDto implements Serializable {
    /**
     * 主键，自增
     */

    @ApiModelProperty(value="id主键，自增")
    private Long couponReceiveId;

    /**
     * 领券类型：0用户，1商户
     */

    @ApiModelProperty(value="receiveType领券类型：0用户，1商户")
    private Byte receiveType;

    /**
     * 优惠券id
     */

    @ApiModelProperty(value="couponId优惠券id")
    private Long couponId;

    /**
     * 用户id或商户id
     */

    @ApiModelProperty(value="receiveId用户id或商户id")
    private Long receiveId;

    /**
     * 订单id
     */

    @ApiModelProperty(value="orderId订单id")
    private Long orderId;

    /**
     * 来源：0页面领取，1系统发放
     */

    @ApiModelProperty(value="sourceKey来源：0页面领取，1系统发放")
    private Byte sourceKey;

    /**
     * 领取时间
     */

    @ApiModelProperty(value="addTime领取时间")
    private Date addTime;

    /**
     * 使用时间
     */

    @ApiModelProperty(value="usedTime使用时间")
    private Date usedTime;

    /**
     * 发券人
     */
    @ApiModelProperty(value="referer发券人")
    private String referer;

    /**
     * 0正常，1已使用，2过期
     */

    @ApiModelProperty(value="couponStatus0正常，1已使用，2过期")
    private Byte couponStatus;


    @ApiModelProperty(value="updateUser")
    private Long updateUser;


    @ApiModelProperty(value="updateTime")
    private Date updateTime;

    /**
     * 附加字段******************************************************************8
     */
    /**
     * 优惠券名称
     */
    @ApiModelProperty(value="name优惠券名称")
    private String name;

    /**
     * 优惠券面额
     */

    @ApiModelProperty(value="typeMoney优惠券面额")
    private Integer typeMoney;

    /**
     * 发放类型
     */

    @ApiModelProperty(value="sendType发放类型")
    private Integer sendType;

    /**
     * 发放对象
     */
    @ApiModelProperty(value="sendAspect发放对象")
    private Integer sendAspect;

    /**
     * 最小金额
     */

    @ApiModelProperty(value="minAmount最小金额")
    private Integer minAmount;

    /**
     * 最大金额
     */

    @ApiModelProperty(value="maxAmount最大金额")
    private Integer maxAmount;

    /**
     * 优惠券发放数量
     */

    @ApiModelProperty(value="number发放数量")
    private Integer number;

    /**
     * 优惠券已领取数量
     */

    @ApiModelProperty(value="nowNum已领取数量")
    private Integer nowNum;

    /**
     * 最小购货数量
     */

    @ApiModelProperty(value="minGoodsAmount最小购货数量")
    private Integer minGoodsAmount;

    /**
     * 发放起始日期
     */

    @ApiModelProperty(value="sendStartDate发放起始日期")
    private Date sendStartDate;

    /**
     * 发放结束日期
     */

    @ApiModelProperty(value="sendEndDate发放结束日期")
    private Date sendEndDate;


    /**
     * 优惠券有效期开始时间
     */

    @ApiModelProperty(value="useStartDate优惠券有效期开始时间")
    private Date useStartDate;

    /**
     * 优惠券有效期结束时间
     */

    @ApiModelProperty(value="useEndDate优惠券有效期结束时间")
    private Date useEndDate;

    /**
     * 标记：0正常，1隐藏
     */
    @ApiModelProperty(value="tag标记：0正常，1隐藏")
    private Integer tag;

    @ApiModelProperty(value="shopName 店铺名")
    private String shopName;


    private String userName;
}
